"""
@Author : 合肥一元数智教育科技有限公司
@Date :  2025/11/12 14:49
@Description :  正则 模块常用函数

"""
import re

#  re.search(pattern, text)
#  扫描整个字符串，返回第一个符合正则表达式的匹配对象。如果没有找到匹配项，则返回 None
text = "this is a url http://www.baidu.com this is a second url http://www.jd.com"
pattern = r"https?://www.[a-z0-9]+.com"
result: re.Match = re.search(pattern, text)
print(result.group())

# re.match(pattern, text)
# - 功能：从字符串的起始位置开始匹配正则表达式，如果起始位置匹配成功，则返回匹配对象，否则返回 None

text = "12345 is a number "
pattern = r"\d+"
result: re.Match = re.match(pattern, text)
print(result)
print(result.group())

# re.sub(pattern, replacement, text,count)
# 功能：将字符串中所有符合正则表达式 pattern 的部分替换为 repl，count 参数用于指定最大替换次数，默认为 0，表示替换所有匹配项
text = "I love apples, apples are great"
pattern = r"apples"
replacement = "oranges"
result = re.sub(pattern, replacement, text,1)
print(result)

# re.split(pattern, text,maxsplit=0, flags=0)
# 功能：根据正则表达式 pattern 将字符串分割为多个子字符串，返回一个列表。maxsplit 参数用于指定最大分割次数，默认为 0，表示不限制分割次数
text = "one,two,three,four"
pattern = r","

result = re.split(pattern, text,maxsplit=2)
print(result)
